import java.awt.Graphics;
import java.awt.Image;

public class Expleosion {
	public Image image;
	public int x,y;
	
	public int count; //전체 이미지에 포함된 단위 이미지의 갯수
	public int width; //단위 이미지의 넓이
	public int height; //단위 이미지의 높이
	public long prevChangeddTime = 0;
	public long chageSpeed = 260;
	public boolean active;
	
	private int currentIndex = 0; //현재 표시할 단위 이미지의 위치에유
	
	public Expleosion(Image image,int x,int y,int count){
		this.image = image;
		this.x = x;
		this.y = y;
		this.count = count;
		width = image.getWidth(null)/count; //가로방향으로 자릅니당
		height = image.getHeight(null);
		active = true;
	}
	public void update(){
		long currentTime = System.currentTimeMillis();
		if(currentTime - prevChangeddTime > chageSpeed){
			currentIndex++;
			if(currentIndex == count){
				active = false;
			}
			prevChangeddTime = currentTime;
		}
		
		currentIndex++;
		if(currentIndex == count){
			active = false;
		}
	}
	
	public void render(Graphics g){
		if(active){
			g.drawImage(image,
					x,						//표시할 화면의 좌상단 x좌표
					y,						//표시할 화면의 좌상단 y좌표
					x+width,				//표시할 화면의 우하단 x2좌표
					y+height,				//표시할 화면의 우하단 y2좌표
					width* currentIndex,	//원본 이미지에서 잘라낸 영역의 좌상단 x
					0,						//원본 이미지에서 잘라낸 영역의 좌상단 y
					width*(currentIndex+1), //원본 이미지에서 잘라낸 영역의 우하단 x
					height,					//원본 이미지에서 잘라낸 영역의 우하단 y
					null);					
		}
	}

}
